//go:build wireinject
// +build wireinject

package sample

import (
	"organoid_public/domain/sample/event"
	"organoid_public/domain/sample/service"
	"organoid_public/infrastructure/db"
	"organoid_public/infrastructure/db/sample"
	eventbus "organoid_public/infrastructure/event"
	"organoid_public/pkg/logger"

	"github.com/google/wire"
)

func wireApp(db db.DefaultDb, bus eventbus.EventBus, log logger.Logger) (*UseCase, func(), error) {
	panic(wire.Build(sample.RepositoryProvider, service.SampleServiceProvider, event.Provider, initSampleUseCase))
}
